package com.imcrl.component.page
{
	
	/**
	 * 可分页接口;(主要为本地分页和远程分页)
	 * @author crl
	 * 
	 */	
	public interface IPageable
	{
		/**
		 * 上一页.
		 * 
		 */		
		function previous():void;
		
		/**
		 * 下一页.
		 * 
		 */		
		function next():void;
		
		/**
		 * 取得分页中,一页可包含多少条数据; 
		
		 * @return 
		 * 
		 */		
		function get pageSize():uint;
		
		
		function get dataLength():int;
		
		/**
		  * 设置一页有几条数据; 
		 * @param value
		 * 
		 */		
		function set pageSize(value:uint):void;
		
		/**
		 * 取得指定页数据 
		 * @param pageIndex 指定页;
		 * @return 页中的数据列表;
		 * 
		 */		
      	function getPageData(pageIndex:int):Array;
		
		/**
		 * 设置当前页码
		 * @param value
		 * 
		 */		
		function set current(value:uint):void;
		
		/**
		 * 取得当前页码; 
		 * @return 
		 * 
		 */		
		function get current():uint;
		
		/**
		 * 总页数.
		 * @return 
		 * 
		 */		
		function get totalPage():uint;
		
		/**
		 * 是(true)否(false)存在下一页. 
		 * @return 
		 * 
		 */		
		function get hasNext() :Boolean;
		
		/**
		 * 是(true)否(false)存在上一页 
		 * @return 
		 * 
		 */		
		function get hasPrevious() :Boolean;
		
	}
}